home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Run Magazine ReRun 1986 January & February
/
rerun-1986-01-02.d64
/
pulsing pics 64
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-09-20
|
4KB
|
153 lines
100 rem pulsing pictures for c-64
110 rem george trepal 2650 alturas rd
120 rem bartow fl 33830
130 :
140 poke 52,32:poke56,32:poke650,128:dimts(39),tc(39):goto560
150 rem synthetic cursor
160 print"[147]";
170 cd=54272:h=214:l=211
180 p=1024+peek(h)*40+peek(l)+(peek(l)>39)*40
190 ch=peek(p):k=128
200 pokep,((ch+k)and255):pokep+cd,peek(646)
210 poke 53272,(peek(53272)and240)+x
220 ifz$="\"thenpoke53272,(peek(53272)and240)+4:end
230 x=x+2: if x=16 then x=8
240 getz$:ifz$=""then200
250 pokep,ch:printz$;
260 ifz$=chr$(34)thenpoke212,0
270 ifz$="[148]"thenpoke216,0
280 ifz$="[133]"then320
290 ifz$="[136]"then450
300 goto180
310 rem save screen
320 forj=0to39:ts(j)=peek(1024+j):tc(j)=peek(55296+j):poke(1024+j),32:next
330 input"program name";pn$
340 ifpn$=""then330
350 pn$=pn$+",s,w"
360 forj=0to39:pokej+1024,ts(j):poke(j+55296),tc(j):next
370 open8,8,8,pn$
380 gosub1580
390 forj=1024to2023:vl=peek(j):print#8,vl
400 next
410 forj=55296to56295:vl=peek(j):print#8,vl
420 next:close8:close15
430 goto170
440 rem load screen
450 input"[147]program name";pn$
460 ifpn$=""then450
470 pn$=pn$+",s,r"
480 open8,8,8,pn$
490 gosub1580
500 forj=1024to2023:input#8,vl:pokej,vl
510 next
520 forj=55296to56295:input#8,vl:pokej,vl
530 next:close8:close15
540 goto170
550 rem move character set
560 poke 53280,12: poke 53281,0: poke 646,13
570 print"[147]":printspc(12)"pulsing pictures"
580 printspc(12)"by george trepal"
590 printspc(6)"the characters that move are:"
600 printspc(9)"unshifted 1 through 9"
610 printspc(11)"shifted 6 7 8 9"
620 printspc(6)"and unshifted , . * + / -"
630 printspc(6)"the \ sign ends the program."
640 printspc(6)"f1 saves the screen to disk"
650 printspc(6)"f7 loads a screen from disk"
660 printspc(6)"[150][211][153]patience is a virtue - wait"
670 printspc(9)"moving character sets"
680 j=53248: k=8192: l=10240: m=12288: n=14336
690 poke56334,peek(56334)and254:rem interrupt off
700 poke 1,peek(1) and 251: rem i/o out
710 fori=0to2023:p=peek(i+j)
720 poke i+k,p: poke i+l,p: poke i+m,p: poke i+n,p
730 next
740 poke 1,peek(1) or 4: rem i/o in
750 poke 56334,peek(56334) or 1: rem interrupt on
760 rem install custom characters
770 j=8495
780 printspc(6)"installing custom characters"
790 j=j+1:read x:if x<0 then810
800 poke j,x: goto790
810 if j<10000 then j=10543: goto790
820 if j<12000 then j=12591: goto790
830 if j<14000 then j=14639: goto790
840 print"[147] press the space bar to go on or any"
850 print" other key to change background color"
860 geta$:ifa$=""then860
870 ifa$<>" "thenpoke53281,(cland15):cl=cl+1:goto860
880 x=8:goto160
890 data0,126,126,96,96,126,126,0,24,60
900 data102,195,129,24,60,102,24,36,66,129
910 data24,36,66,129,102,60,24,0,195,102
920 data60,24,129,66,36,24,129,66,36,24
930 data255,255,0,0,0,255,255,0,255,0
940 data0,0,255,0,0,0,255,255,0,0
950 data0,255,255,0,255,0,0,0,255,0
960 data0,0,255,129,129,129,129,129,129,255
970 data0,0,0,24,24,0,0,0,192,129
980 data3,6,12,24,48,96,3,129,192,96
990 data48,24,12,6,192,192,192,192,192,192
1000 data192,192,3,3,3,3,3,3,3,3
1010 data255,255,0,0,0,0,255,255,195,195
1020 data195,195,195,195,195,195,135,36,48,4
1030 data108,104,0,49,0,0,0,0,15,15
1040 data15,15,204,204,51,51,204,204,51,51
1050 data -1
1060 data0,126,126,102,102,102,102,0,60,102
1070 data195,129,24,60,102,195,36,66,129,24
1080 data36,66,129,24,195,102,60,24,0,195
1090 data102,60,24,129,66,36,24,129,66,36
1100 data255,0,0,0,255,255,0,0,0,0
1110 data0,255,0,0,0,255,0,255,255,0
1120 data0,0,255,255,0,255,0,0,0,255
1130 data0,0,0,126,66,66,66,66,126,0
1140 data0,0,60,36,36,60,0,0,3,6
1150 data12,24,48,96,193,131,192,96,48,24
1160 data12,6,131,193,48,48,48,48,48,48
1170 data48,48,12,12,12,12,12,12,12,12
1180 data0,255,255,0,0,255,255,0,102,102
1190 data102,102,102,102,102,102,192,196,28,80
1200 data0,103,37,32,0,0,0,0,240,240
1210 data240,240,102,102,153,153,102,102,153,153
1220 data -1
1230 data0,126,126,6,6,126,126,0,102,195
1240 data0,24,60,102,195,24,66,129,24,36
1250 data66,129,24,36,24,195,102,60,24,0
1260 data195,102,36,24,129,66,36,24,129,66
1270 data0,0,0,255,255,0,0,0,0,0
1280 data255,0,0,0,255,0,0,255,255,0
1290 data0,0,0,255,0,0,255,0,0,0
1300 data255,0,0,0,60,36,36,60,0,0
1310 data0,126,66,66,66,66,126,0,12,24
1320 data48,96,192,129,3,6,48,24,12,6
1330 data3,129,192,96,12,12,12,12,12,12
1340 data12,12,48,48,48,48,48,48,48,48
1350 data0,0,0,255,255,0,0,0,24,24
1360 data24,24,24,24,24,24,0,143,160,162
1370 data2,42,200,3,240,240,240,240,0,0
1380 data0,0,51,51,204,204,51,51,204,204
1390 data -1
1400 data0,102,102,102,102,126,126,0,195,0
1410 data24,60,102,195,24,60,129,24,36,66
1420 data129,24,36,66,60,24,195,102,60,24
1430 data0,195,66,36,152,129,66,36,24,129
1440 data0,0,255,255,0,0,0,255,0,255
1450 data0,0,0,255,0,0,0,0,255,255
1460 data0,0,0,0,0,0,0,255,0,0
1470 data0,255,0,0,0,24,24,0,0,0
1480 data255,129,129,129,129,129,129,255,48,96
1490 data192,129,3,6,12,24,12,6,3,129
1500 data192,96,48,24,3,3,3,3,3,3
1510 data3,3,192,192,192,192,192,192,192,192
1520 data0,255,255,0,0,255,255,0,54,54
1530 data54,54,54,54,54,54,3,121,0,215
1540 data16,244,6,48,15,15,15,15,0,0
1550 data0,0,102,102,153,153,102,102,153,153
1560 data -1
1570 ren error trap
1580 open15,8,15
1590 input#15,e,e$
1600 ife=0thenreturn
1610 printe,e$:close8:close15:end